home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / lang / SmallEiffel.lha / SmallEiffel / bin_c / short23.c < prev    next >
C/C++ Source or Header  |  1998-12-22  |  38KB  |  1,796 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79)      --
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                 http://www.loria.fr/SmallEiffel              --
  7. */
  8. #include "short.h"
  9. /*No:ONCE_RESULT.us_result*/
  10. /*No:ONCE_RESULT.start_position*/
  11.  
  12.  
  13. T0* r142add_comment(T142* C,T0* a1){
  14. T0* R=NULL;
  15. /*[IF*/
  16. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r34count(((T34*)((((T52*)a1))->_list/*4*/)))/*)*/)==(0))){
  17. R=(T0*)C;
  18. }
  19. else{
  20. {T218*n=malloc(sizeof(*n));
  21. *n=M218;
  22. r218make(n,(T0*)C,a1);
  23. R=(T0*)n;
  24. }
  25. }
  26. /*FI]*/
  27. return R;
  28. }
  29.  
  30.  
  31. T2 r142to_integer(T142* C){
  32. T2 R=0;
  33. r142error((C)->_start_position/*4*/,((T0*)ms12_45846));
  34. return R;
  35. }
  36.  
  37.  
  38. T0* r142to_runnable(T142* C,T0* a1){
  39. T0* R=NULL;
  40. T0* _rt2=NULL;
  41. T0* _rt1=NULL;
  42. T0* _rf6=NULL;
  43. R=(T0*)C;
  44. _rf6=r59top_rf((T59*)(oBC11small_eiffel));
  45. if(NULL!=(_rf6))switch(((T0*)_rf6)->id) {
  46. case 340: 
  47. break;
  48. default:
  49. _rf6=NULL;
  50. };/*[IF*/
  51. if(((C)->_run_feature_6/*8*/)==((void*)(NULL))){
  52. C->_run_feature_6=_rf6;
  53. }
  54. else{
  55. _rt1=X46run_type((((T340*)_rf6))->_result_type/*40*/);
  56. _rt2=X46run_type(((T340*)((C)->_run_feature_6/*8*/))->_result_type/*40*/);
  57. /*[IF*/
  58. if((X46run_time_mark(_rt1))!=((void*)(X46run_time_mark(_rt2)))){
  59. r67add_position(X46start_position(_rt1));
  60. r67add_position(X46start_position(_rt2));
  61. r340fe_vffd7((T340*)((C)->_run_feature_6/*8*/));
  62. }
  63. /*FI]*/
  64. }
  65. /*FI]*/
  66. return R;
  67. }
  68. /*No:ONCE_RESULT.fz_iinaiv*/
  69. /*No:ONCE_RESULT.result_type*/
  70.  
  71.  
  72. void r142error(T0* a1,T0* a2){
  73. r67add_position(a1);
  74. r67error((T67*)(oBC11eh),a2);
  75. }
  76. /*No:ONCE_RESULT.precedence*/
  77. /*No:ONCE_RESULT.make*/
  78. /*No:ONCE_RESULT.bracketed_short*/
  79. /*No:ONCE_RESULT.is_current*/
  80. /*No:ONCE_RESULT.is_void*/
  81. /*No:ONCE_RESULT.short_target*/
  82. /*No:ONCE_RESULT.run_feature_6*/
  83. /*No:ONCE_RESULT.short*/
  84. /*No:ONCE_RESULT.atomic_precedence*/
  85. /*No:FORMAL_GENERIC_ARG.start_position*/
  86.  
  87.  
  88. void r43make(T43* C,T0* a1,T0* a2){
  89. C->_name=a1;
  90. C->_constraint=a2;
  91. }
  92. /*No:FORMAL_GENERIC_ARG.name*/
  93. /*No:FORMAL_GENERIC_ARG.constraint*/
  94. /*No:FORMAL_GENERIC_ARG.constrained*/
  95.  
  96.  
  97. void r43short(T43* C){
  98. r39a_class_name((T39*)(oBC11short_print),(C)->_name/*0*/);
  99. /*[IF*/
  100. if(/*(IRF4.7constrained*/((C)->_constraint/*4*/)!=(NULL)/*)*/){
  101. r39hook_or((T39*)(oBC11short_print),((T0*)ms43_2850),((T0*)ms43_220));
  102. X46short((C)->_constraint/*4*/);
  103. }
  104. /*FI]*/
  105. }
  106. /*No:INDEX_CLAUSE.tag*/
  107. /*No:INDEX_CLAUSE.without_tag*/
  108.  
  109.  
  110. void r306add_last(T306* C,T0* a1){
  111. /*[IF*/
  112. if(((C)->_list/*4*/)==((void*)(NULL))){
  113. {T138*n=malloc(sizeof(*n));
  114. *n=M138;
  115. r138with_capacity(n,4);
  116. C->_list=(T0*)n;
  117. }
  118. }
  119. /*FI]*/
  120. X138add_last((C)->_list/*4*/,a1);
  121. }
  122. /*No:INDEX_CLAUSE.with_tag*/
  123. /*No:INDEX_CLAUSE.list*/
  124. /*No:TYPE_NATIVE_ARRAY.generic_list*/
  125.  
  126.  
  127. T0* r251base_class(T251* C){
  128. T0* R=NULL;
  129. T0* _bcn=NULL;
  130. _bcn=(C)->_base_class_name/*4*/;
  131. /*[IF*/
  132. if((_bcn)!=((void*)(NULL))){
  133. R=r47base_class(((T47*)_bcn));
  134. }
  135. else{
  136. /*[IRF3.6append*/{T0* b1=((T0*)ms46_37098);
  137. r7append((T7*)(oBC67explanation),b1);
  138. }/*]*/
  139. r67add_type((T0*)C,((T0*)ms12_47));
  140. r67print_as_fatal_error((T67*)(oBC11eh));
  141. }
  142. /*FI]*/
  143. return R;
  144. }
  145. /*No:TYPE_NATIVE_ARRAY.base_class_name*/
  146. /*No:TYPE_NATIVE_ARRAY.start_position*/
  147. /*No:TYPE_NATIVE_ARRAY.is_formal_generic*/
  148. /*No:TYPE_NATIVE_ARRAY.used_as_reference*/
  149.  
  150.  
  151. T6 r251is_a_in(T251* C,T0* a1,T0* a2){
  152. T6 R=0;
  153. T0* _ct=NULL;
  154. T0* _t2=NULL;
  155. T0* _t1=NULL;
  156. /*[IF*/
  157. if(((C)->_written_mark/*12*/)==((void*)(X46written_mark(a1)))){
  158. R=1;
  159. }
  160. else{
  161. _ct=(((T310*)a2))->_current_type/*0*/;
  162. _t1=r251to_runnable(C,_ct);
  163. _t2=X46to_runnable(a1,_ct);
  164. /*[IF*/
  165. if((X46run_time_mark(_t1))==((void*)(X46run_time_mark(_t2)))){
  166. R=1;
  167. }
  168. else{
  169. R=X46is_a(_t1,_t2);
  170. }
  171. /*FI]*/
  172. }
  173. /*FI]*/
  174. return R;
  175. }
  176. /*No:TYPE_NATIVE_ARRAY.elements_type*/
  177.  
  178.  
  179. T2 r251id(T251* C){
  180. T2 R=0;
  181. R=((T310*)(r251run_class(C)))->_id/*4*/;
  182. return R;
  183. }
  184. /*No:TYPE_NATIVE_ARRAY.is_pointer*/
  185.  
  186.  
  187. T0* r251look_up_for(T251* C,T0* a1,T0* a2){
  188. T0* R=NULL;
  189. R=r22look_up_for((T22*)(r251base_class(C)),a1,a2);
  190. return R;
  191. }
  192.  
  193.  
  194. T0* r251to_runnable(T251* C,T0* a1){
  195. T0* R=NULL;
  196. T0* _rt=NULL;
  197. T0* _et2=NULL;
  198. T0* _et1=NULL;
  199. _et1=/*(IRF4.6elements_type*/r249first(((T249*)((C)->_generic_list/*8*/)))/*)*/;
  200. _et2=X46to_runnable(_et1,a1);
  201. /*[IF*/
  202. if((_et2)==((void*)(NULL))){
  203. /*[IF*/
  204. if((_et2)!=((void*)(NULL))){
  205. r67add_position(X46start_position(_et2));
  206. }
  207. /*FI]*/
  208. r67add_position(X46start_position(_et1));
  209. /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_28959);
  210. r67fatal_error((T67*)(oBC11eh),b1);
  211. }/*]*/
  212. }
  213. /*FI]*/
  214. _et2=X46run_type(_et2);
  215. /*[IF*/
  216. if(((C)->_run_type/*16*/)==((void*)(NULL))){
  217. R=(T0*)C;
  218. /*[IF*/
  219. if((_et2)==((void*)(_et1))){
  220. C->_run_type=(T0*)C;
  221. r251load_basic_features(C);
  222. }
  223. else{
  224. {T251*n=malloc(sizeof(*n));
  225. *n=M251;
  226. r251make_runnable(n,/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,_et2);
  227. C->_run_type=(T0*)n;
  228. }
  229. r251load_basic_features((T251*)((C)->_run_type/*16*/));
  230. }
  231. /*FI]*/
  232. }
  233.  else if((_et2)==((void*)(_et1))){
  234. R=(T0*)C;
  235. }
  236. else{
  237. R=r251twin(C);
  238. {T251*n=malloc(sizeof(*n));
  239. *n=M251;
  240. r251make_runnable(n,/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,_et2);
  241. _rt=(T0*)n;
  242. }
  243. /*[IRF3.3set_run_type*/((((T251*)(((T251*)R))))->_run_type)=(_rt);
  244. /*]*/
  245. r251load_basic_features(((T251*)_rt));
  246. }
  247. /*FI]*/
  248. return R;
  249. }
  250.  
  251.  
  252. void r251load_basic_features(T251* C){
  253. T0* _rc=NULL;
  254. T0* _rf=NULL;
  255. T0* _et=NULL;
  256. _rc=r251run_class(C);
  257. r310set_at_run_time(((T310*)_rc));
  258. _et=/*(IRF4.6elements_type*/r249first(((T249*)((C)->_generic_list/*8*/)))/*)*/;
  259. /*[IF*/
  260. if(X46is_expanded(_et)){
  261. r310set_at_run_time((T310*)(X46run_class(_et)));
  262. }
  263. /*FI]*/
  264. _rf=r310get_feature_with(((T310*)_rc),((T0*)ms13_1764));
  265. _rf=r310get_feature_with(((T310*)_rc),((T0*)ms13_1053));
  266. /*[IF*/
  267. if((X46expanded_initializer(_et))!=((void*)(NULL))){
  268. _rf=r310get_feature_with(((T310*)_rc),((T0*)ms13_13554));
  269. }
  270. /*FI]*/
  271. }
  272. /*No:TYPE_NATIVE_ARRAY.run_type*/
  273.  
  274.  
  275. T0* r251run_class(T251* C){
  276. T0* R=NULL;
  277. /*[IF*/
  278. if(r251is_run_type(C)){
  279. R=r59run_class((C)->_run_type/*16*/);
  280. }
  281. /*FI]*/
  282. return R;
  283. }
  284. /*No:TYPE_NATIVE_ARRAY.has_creation*/
  285. /*No:TYPE_NATIVE_ARRAY.expanded_initializer*/
  286. /*No:TYPE_NATIVE_ARRAY.us_clear_all*/
  287. /*No:TYPE_NATIVE_ARRAY.us_item*/
  288. /*No:TYPE_NATIVE_ARRAY.is_like_current*/
  289. /*No:TYPE_NATIVE_ARRAY.is_boolean*/
  290. /*No:TYPE_NATIVE_ARRAY.is_generic*/
  291.  
  292.  
  293. void r251make_runnable(T251* C,T0* a1,T0* a2){
  294. r251make(C,a1,a2);
  295. C->_run_type=(T0*)C;
  296. }
  297. /*No:TYPE_NATIVE_ARRAY.is_bit*/
  298. /*No:TYPE_NATIVE_ARRAY.is_real*/
  299.  
  300.  
  301. T0* r251smallest_ancestor(T251* C,T0* a1){
  302. T0* R=NULL;
  303. T0* _rto=NULL;
  304. _rto=X46run_type(a1);
  305. /*[IF*/
  306. if(X46is_a(_rto,(C)->_run_type/*16*/)){
  307. R=_rto;
  308. }
  309.  else if(r251is_a((T251*)((C)->_run_type/*16*/),_rto)){
  310. R=(C)->_run_type/*16*/;
  311. }
  312. else{
  313. R=r251type_any();
  314. }
  315. /*FI]*/
  316. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC67explanation))))->_count)=(0);
  317. /*]*/
  318. /*[IRF3.3clear*/((((T68*)((T68*)(oBC67positions))))->_upper)=(-(1));
  319. /*]*/
  320. /*]*/
  321. return R;
  322. }
  323. /*No:TYPE_NATIVE_ARRAY.is_any*/
  324. /*No:TYPE_NATIVE_ARRAY.fatal_error*/
  325. /*No:TYPE_NATIVE_ARRAY.set_run_type*/
  326.  
  327.  
  328. T0* r251run_time_mark(T251* C){
  329. T0* R=NULL;
  330. /*[IF*/
  331. if(r251is_run_type(C)){
  332. R=((T251*)((C)->_run_type/*16*/))->_written_mark/*12*/;
  333. }
  334. /*FI]*/
  335. return R;
  336. }
  337.  
  338.  
  339. T0* r251twin(T251* C){
  340. T0* R=NULL;
  341. R=malloc(sizeof(*C));
  342. *((T251*)R)=*C;
  343. return R;
  344. }
  345. /*No:TYPE_NATIVE_ARRAY.is_expanded*/
  346. /*No:TYPE_NATIVE_ARRAY.us_put*/
  347. /*No:TYPE_NATIVE_ARRAY.is_basic_eiffel_expanded*/
  348.  
  349.  
  350. T0* r251type_any(void){
  351. if(fBC11type_any==0){
  352. fBC11type_any=1;
  353. {T247*n=malloc(sizeof(*n));
  354. *n=M247;
  355. r247make(n,NULL);
  356. oBC11type_any=(T0*)n;
  357. }
  358. }
  359. return oBC11type_any;}
  360.  
  361.  
  362. void r251short_hook(T251* C){
  363. r39a_class_name((T39*)(oBC11short_print),(C)->_base_class_name/*4*/);
  364. r39hook_or((T39*)(oBC11short_print),((T0*)ms251_8610),((T0*)ms251_92));
  365. X46short_hook(r249first((T249*)((C)->_generic_list/*8*/)));
  366. r39hook_or((T39*)(oBC11short_print),((T0*)ms251_10664),((T0*)ms251_94));
  367. }
  368. /*No:TYPE_NATIVE_ARRAY.us_native_array*/
  369. /*No:TYPE_NATIVE_ARRAY.is_string*/
  370. /*No:TYPE_NATIVE_ARRAY.is_integer*/
  371. /*No:TYPE_NATIVE_ARRAY.is_like_feature*/
  372. /*No:TYPE_NATIVE_ARRAY.fz_dot*/
  373. /*No:TYPE_NATIVE_ARRAY.is_anchored*/
  374.  
  375.  
  376. T6 r251is_a(T251* C,T0* a1){
  377. T6 R=0;
  378. R=(r251run_time_mark(C))==((void*)(X46run_time_mark(a1)));
  379. /*[IF*/
  380. if(!(R)){
  381. r67add_type((T0*)C,((T0*)ms12_17730));
  382. r67add_type(a1,((T0*)ms12_47));
  383. }
  384. /*FI]*/
  385. return R;
  386. }
  387.  
  388.  
  389. T6 r251is_run_type(T251* C){
  390. T6 R=0;
  391. T0* _et=NULL;
  392. /*[IF*/
  393. if(((C)->_run_type/*16*/)!=((void*)(NULL))){
  394. R=1;
  395. }
  396. else{
  397. _et=/*(IRF4.6elements_type*/r249first(((T249*)((C)->_generic_list/*8*/)))/*)*/;
  398. /*[IF*/
  399. if((X46is_run_type(_et))&&((X46run_type(_et))==((void*)(_et)))){
  400. C->_run_type=(T0*)C;
  401. r251load_basic_features(C);
  402. R=1;
  403. }
  404. /*FI]*/
  405. }
  406. /*FI]*/
  407. return R;
  408. }
  409. /*No:TYPE_NATIVE_ARRAY.is_character*/
  410. /*No:TYPE_NATIVE_ARRAY.is_reference*/
  411. /*No:TYPE_NATIVE_ARRAY.written_mark*/
  412.  
  413.  
  414. void r251make(T251* C,T0* a1,T0* a2){
  415. {T47*n=malloc(sizeof(*n));
  416. *n=M47;
  417. r47make(n,((T0*)ms13_17628),a1);
  418. C->_base_class_name=(T0*)n;
  419. }
  420. C->_generic_list=se_ma249(1,
  421. a2);
  422. r7copy((T7*)(((T0*)ms46_785024)),((T0*)ms13_17628));
  423. r7extend((T7*)(((T0*)ms46_785024)),'\133');
  424. r7append((T7*)(((T0*)ms46_785024)),X46written_mark(a2));
  425. r7extend((T7*)(((T0*)ms46_785024)),'\135');
  426. C->_written_mark=r78item(((T0*)ms46_785024));
  427. }
  428. /*No:TYPE_NATIVE_ARRAY.is_none*/
  429. /*No:TYPE_NATIVE_ARRAY.is_array*/
  430. /*No:TYPE_NATIVE_ARRAY.fz_inako*/
  431. /*No:TYPE_NATIVE_ARRAY.fz_bga*/
  432. /*No:TYPE_NATIVE_ARRAY.is_like_argument*/
  433. /*No:TYPE_NATIVE_ARRAY.tmp_string*/
  434. /*No:TYPE_NATIVE_ARRAY.is_double*/
  435.  
  436.  
  437. void r251short(T251* C){
  438. r39hook((T39*)(oBC11short_print),((T0*)ms46_891));
  439. r251short_hook(C);
  440. r39hook((T39*)(oBC11short_print),((T0*)ms46_888));
  441. }
  442.  
  443.  
  444. T0* r255generic_list(T255* C){
  445. T0* R=NULL;
  446. r255fatal_error_generic_list(C);
  447. return R;
  448. }
  449.  
  450.  
  451. T0* r255base_class(T255* C){
  452. T0* R=NULL;
  453. T0* _bcn=NULL;
  454. _bcn=(C)->_base_class_name/*4*/;
  455. /*[IF*/
  456. if((_bcn)!=((void*)(NULL))){
  457. R=r47base_class(((T47*)_bcn));
  458. }
  459. else{
  460. /*[IRF3.6append*/{T0* b1=((T0*)ms46_37098);
  461. r7append((T7*)(oBC67explanation),b1);
  462. }/*]*/
  463. r67add_type((T0*)C,((T0*)ms12_47));
  464. r67print_as_fatal_error((T67*)(oBC11eh));
  465. }
  466. /*FI]*/
  467. return R;
  468. }
  469. /*No:TYPE_DOUBLE.base_class_name*/
  470. /*No:TYPE_DOUBLE.start_position*/
  471. /*No:TYPE_DOUBLE.is_formal_generic*/
  472. int fBC255used_as_reference=0;
  473.  
  474.  
  475. void r255used_as_reference(void){
  476. if (fBC255used_as_reference==0){
  477. fBC255used_as_reference=1;
  478. r255load_ref(((T0*)ms13_10890));
  479. }}
  480.  
  481.  
  482. T6 r255is_a_in(T255* C,T0* a1,T0* a2){
  483. T6 R=0;
  484. T0* _ct=NULL;
  485. T0* _t2=NULL;
  486. T0* _t1=NULL;
  487. /*[IF*/
  488. if((r255written_mark())==((void*)(X46written_mark(a1)))){
  489. R=1;
  490. }
  491. else{
  492. _ct=(((T310*)a2))->_current_type/*0*/;
  493. _t1=r255to_runnable(C,_ct);
  494. _t2=X46to_runnable(a1,_ct);
  495. /*[IF*/
  496. if((X46run_time_mark(_t1))==((void*)(X46run_time_mark(_t2)))){
  497. R=1;
  498. }
  499. else{
  500. R=X46is_a(_t1,_t2);
  501. }
  502. /*FI]*/
  503. }
  504. /*FI]*/
  505. return R;
  506. }
  507. /*No:TYPE_DOUBLE.id*/
  508. /*No:TYPE_DOUBLE.is_pointer*/
  509.  
  510.  
  511. T0* r255look_up_for(T255* C,T0* a1,T0* a2){
  512. T0* R=NULL;
  513. R=r22look_up_for((T22*)(r255base_class(C)),a1,a2);
  514. return R;
  515. }
  516.  
  517.  
  518. T0* r255to_runnable(T255* C,T0* a1){
  519. T0* R=NULL;
  520. R=(T0*)C;
  521. r255check_type(C);
  522. return R;
  523. }
  524. /*No:TYPE_DOUBLE.us_double_ref*/
  525. int fBC11type_double_ref=0;
  526. T0*oBC11type_double_ref=NULL;
  527.  
  528.  
  529. T0* r255type_double_ref(void){
  530. if(fBC11type_double_ref==0){
  531. T0* _double_ref=NULL;
  532. fBC11type_double_ref=1;
  533. {T47*n=malloc(sizeof(*n));
  534. *n=M47;
  535. r47make(n,((T0*)ms13_10890),NULL);
  536. _double_ref=(T0*)n;
  537. }
  538. {T261*n=malloc(sizeof(*n));
  539. *n=M261;
  540. /*[IRF3.3make*/((((T261*)(n)))->_base_class_name)=(_double_ref);
  541. /*]*/
  542. oBC11type_double_ref=(T0*)n;
  543. }
  544. }
  545. return oBC11type_double_ref;}
  546. /*No:TYPE_DOUBLE.run_type*/
  547.  
  548.  
  549. T0* r255run_class(T255* C){
  550. T0* R=NULL;
  551. R=r59run_class((T0*)C);
  552. return R;
  553. }
  554.  
  555.  
  556. T6 r255has_creation(T255* C,T0* a1){
  557. T6 R=0;
  558. r67add_position(X77start_position(a1));
  559. r255error(/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,((T0*)ms253_100044));
  560. return R;
  561. }
  562. /*No:TYPE_DOUBLE.expanded_initializer*/
  563. /*No:TYPE_DOUBLE.us_item*/
  564. /*No:TYPE_DOUBLE.is_like_current*/
  565. /*No:TYPE_DOUBLE.is_boolean*/
  566. /*No:TYPE_DOUBLE.is_generic*/
  567. /*No:TYPE_DOUBLE.is_bit*/
  568. /*No:TYPE_DOUBLE.is_real*/
  569.  
  570.  
  571. T0* r255smallest_ancestor(T255* C,T0* a1){
  572. T0* R=NULL;
  573. T0* _rto=NULL;
  574. _rto=X46run_type(a1);
  575. /*[IF*/
  576. if(X46is_integer(_rto)){
  577. R=(T0*)C;
  578. }
  579.  else if(X46is_real(_rto)){
  580. R=(T0*)C;
  581. }
  582.  else if(X46is_double(_rto)){
  583. R=(T0*)C;
  584. }
  585. else{
  586. R=r261smallest_ancestor((T261*)(r255type_double_ref()),_rto);
  587. }
  588. /*FI]*/
  589. return R;
  590. }
  591. /*No:TYPE_DOUBLE.is_any*/
  592. /*No:TYPE_DOUBLE.nb_errors*/
  593. /*No:TYPE_DOUBLE.us_double*/
  594.  
  595.  
  596. T0* r255run_time_mark(void){
  597. T0* R=NULL;
  598. R=((T0*)ms13_4818);
  599. return R;
  600. }
  601. /*No:TYPE_DOUBLE.is_expanded*/
  602. /*No:TYPE_DOUBLE.is_basic_eiffel_expanded*/
  603. /*No:TYPE_DOUBLE.short_hook*/
  604. /*No:TYPE_DOUBLE.is_string*/
  605. /*No:TYPE_DOUBLE.is_integer*/
  606. /*No:TYPE_DOUBLE.is_like_feature*/
  607. /*No:TYPE_DOUBLE.fz_dot*/
  608. /*No:TYPE_DOUBLE.is_anchored*/
  609. /*No:TYPE_DOUBLE.is_run_type*/
  610.  
  611.  
  612. T6 r255is_a(T255* C,T0* a1){
  613. T6 R=0;
  614. /*[IF*/
  615. if(X46is_double(a1)){
  616. R=1;
  617. }
  618.  else if(r22is_subclass_of((T22*)(r255base_class(C)),X46base_class(a1))){
  619. R=1;
  620. r255used_as_reference();
  621. }
  622. /*FI]*/
  623. /*[IF*/
  624. if(!(R)){
  625. r67add_type((T0*)C,((T0*)ms12_17730));
  626. r67add_type(a1,((T0*)ms12_47));
  627. }
  628. /*FI]*/
  629. return R;
  630. }
  631. /*No:TYPE_DOUBLE.is_character*/
  632. /*No:TYPE_DOUBLE.is_reference*/
  633.  
  634.  
  635. T0* r255written_mark(void){
  636. T0* R=NULL;
  637. R=((T0*)ms13_4818);
  638. return R;
  639. }
  640.  
  641.  
  642. void r255error(T0* a1,T0* a2){
  643. r67add_position(a1);
  644. r67error((T67*)(oBC11eh),a2);
  645. }
  646.  
  647.  
  648. void r255make(T255* C,T0* a1){
  649. {T47*n=malloc(sizeof(*n));
  650. *n=M47;
  651. r47make(n,((T0*)ms13_4818),a1);
  652. C->_base_class_name=(T0*)n;
  653. }
  654. }
  655. /*No:TYPE_DOUBLE.is_none*/
  656. /*No:TYPE_DOUBLE.is_array*/
  657. /*No:TYPE_DOUBLE.fz_inako*/
  658.  
  659.  
  660. void r255fatal_error_generic_list(T255* C){
  661. r67add_type((T0*)C,((T0*)ms46_29184));
  662. r67print_as_fatal_error((T67*)(oBC11eh));
  663. }
  664. /*No:TYPE_DOUBLE.is_like_argument*/
  665.  
  666.  
  667. void r255load_ref(T0* a1){
  668. T0* _rf=NULL;
  669. T0* _rc=NULL;
  670. T0* _cn=NULL;
  671. {T47*n=malloc(sizeof(*n));
  672. *n=M47;
  673. r47make(n,a1,NULL);
  674. _cn=(T0*)n;
  675. }
  676. _rc=r22run_class((T22*)(r47base_class(((T47*)_cn))));
  677. r310set_at_run_time(((T310*)_rc));
  678. _rf=r310get_feature_with(((T310*)_rc),((T0*)ms13_1764));
  679. }
  680. int fBC255check_type=0;
  681.  
  682.  
  683. void r255check_type(T255* C){
  684. if (fBC255check_type==0){
  685. T0* _rc=NULL;
  686. T0* _bc=NULL;
  687. fBC255check_type=1;
  688. _bc=r255base_class(C);
  689. /*[IF*/
  690. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  691. _rc=r255run_class(C);
  692. }
  693. /*FI]*/
  694. /*[IF*/
  695. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  696. /*[IF*/
  697. if(!((((T22*)_bc))->_is_expanded/*20*/)){
  698. r255error(/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,((T0*)ms255_35832));
  699. }
  700. /*FI]*/
  701. }
  702. /*FI]*/
  703. }}
  704. /*No:TYPE_DOUBLE.is_double*/
  705.  
  706.  
  707. void r255short(T255* C){
  708. r39hook((T39*)(oBC11short_print),((T0*)ms46_891));
  709. /*[IRF3.6short_hook*/{T255* C1=C;
  710. r39a_class_name((T39*)(oBC11short_print),(C1)->_base_class_name/*4*/);
  711. }/*]*/
  712. r39hook((T39*)(oBC11short_print),((T0*)ms46_888));
  713. }
  714. /*No:CST_ATT_DOUBLE.base_class*/
  715. /*No:CST_ATT_DOUBLE.value_mem*/
  716.  
  717.  
  718. T0* r200start_position(T200* C){
  719. T0* R=NULL;
  720. R=X77start_position(/*(IRF4.6first_name*/r79item(((T79*)((C)->_names/*8*/)),1)/*)*/);
  721. return R;
  722. }
  723.  
  724.  
  725. T6 r200is_merge_with(T200* C,T0* a1,T0* a2){
  726. T6 R=0;
  727. R=1;
  728. /*[IF*/
  729. if(((C)->_result_type/*20*/)!=((void*)(X87result_type(a1)))){
  730. /*[IF*/
  731. if((((C)->_result_type/*20*/)==((void*)(NULL)))||((X87result_type(a1))==((void*)(NULL)))){
  732. R=0;
  733. }
  734. /*FI]*/
  735. }
  736. /*FI]*/
  737. /*[IF*/
  738. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X87arguments(a1)))){
  739. /*[IF*/
  740. {/*AT*/R=0;
  741. }
  742. /*FI]*/
  743. }
  744. /*FI]*/
  745. /*[IF*/
  746. if(R){
  747. /*[IF*/
  748. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  749. R=X46is_a_in((C)->_result_type/*20*/,X87result_type(a1),a2);
  750. }
  751. /*FI]*/
  752. /*[IF*/
  753. if((R)&&((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(NULL)))){
  754. R=r175is_a_in((T175*)(/*(IRF4.1arguments*/NULL/*)*/),X87arguments(a1),a2);
  755. }
  756. /*FI]*/
  757. /*[IF*/
  758. if(!(R)){
  759. R=1;
  760. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC67explanation))))->_count)=(0);
  761. /*]*/
  762. /*[IRF3.3clear*/((((T68*)((T68*)(oBC67positions))))->_upper)=(-(1));
  763. /*]*/
  764. /*]*/
  765. /*[IF*/
  766. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  767. R=X46is_a_in(X87result_type(a1),(C)->_result_type/*20*/,a2);
  768. }
  769. /*FI]*/
  770. /*[IF*/
  771. if((R)&&((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(NULL)))){
  772. R=r175is_a_in((T175*)(X87arguments(a1)),/*(IRF4.1arguments*/NULL/*)*/,a2);
  773. }
  774. /*FI]*/
  775. }
  776. /*FI]*/
  777. }
  778. /*FI]*/
  779. /*[IF*/
  780. if(R){
  781. r200merge_header_comments(C,a1);
  782. }
  783. /*FI]*/
  784. return R;
  785. }
  786. /*No:CST_ATT_DOUBLE.first_name*/
  787. /*No:CST_ATT_DOUBLE.em1*/
  788. /*No:CST_ATT_DOUBLE.header_comment*/
  789. /*No:CST_ATT_DOUBLE.names*/
  790. /*No:CST_ATT_DOUBLE.result_type*/
  791. /*No:CST_ATT_DOUBLE.code_require*/
  792. /*No:CST_ATT_DOUBLE.make_e_feature*/
  793.  
  794.  
  795. void r200add_into(T200* C,T0* a1){
  796. T0* _fn=NULL;
  797. T2 _i=0;
  798. C->_base_class=r69base_class((T69*)(X77start_position(r79item((T79*)((C)->_names/*8*/),1))));
  799. _i=1;
  800. while (!((_i)>(r79count((T79*)((C)->_names/*8*/))))) {
  801. _fn=r79item((T79*)((C)->_names/*8*/),_i);
  802. /*[IF*/
  803. if(r86has(((T86*)a1),X77to_key(_fn))){
  804. _fn=/*X87first_name*/((T0*)/*(IRF4.6first_name*/r79item(((T79*)(((T187*)(r86at(((T86*)a1),X77to_key(_fn))))->_names/*8*/)),1)/*)*/);
  805. r67add_position(X77start_position(_fn));
  806. r67add_position(X77start_position(r79item((T79*)((C)->_names/*8*/),_i)));
  807. r67error((T67*)(oBC11eh),((T0*)ms87_41905));
  808. /*[IRF3.6append*/{T0* b1=X77to_string(_fn);
  809. r7append((T7*)(oBC67explanation),b1);
  810. }/*]*/
  811. r67error((T67*)(oBC11eh),((T0*)ms12_47));
  812. }
  813. else{
  814. r86put(((T86*)a1),(T0*)C,X77to_key(_fn));
  815. }
  816. /*FI]*/
  817. _i=(_i)+(1);
  818. }
  819. }
  820.  
  821.  
  822. T6 r200can_hide(T200* C,T0* a1,T0* a2){
  823. T6 R=0;
  824. /*[IF*/
  825. if(((C)->_result_type/*20*/)!=((void*)(X87result_type(a1)))){
  826. /*[IF*/
  827. if((((C)->_result_type/*20*/)==((void*)(NULL)))||((X87result_type(a1))==((void*)(NULL)))){
  828. r67add_position(X87start_position(a1));
  829. r200error(r200start_position(C),((T0*)ms87_64647));
  830. }
  831. /*FI]*/
  832. }
  833. /*FI]*/
  834. /*[IF*/
  835. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X87arguments(a1)))){
  836. /*[IF*/
  837. {/*AT*/r67add_position(X87start_position(a1));
  838. r200error(r200start_position(C),((T0*)ms87_83182));
  839. }
  840. /*FI]*/
  841. }
  842. /*FI]*/
  843. /*[IF*/
  844. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  845. /*[IF*/
  846. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  847. /*[IF*/
  848. if(!(X46is_a_in((C)->_result_type/*20*/,X87result_type(a1),a2))){
  849. /*[IRF3.6append*/{T0* b1=((T0*)ms87_54285);
  850. r7append((T7*)(oBC67explanation),b1);
  851. }/*]*/
  852. /*[IRF3.6append*/{T0* b1=X46run_time_mark((((T310*)a2))->_current_type/*0*/);
  853. r7append((T7*)(oBC67explanation),b1);
  854. }/*]*/
  855. r67error((T67*)(oBC11eh),((T0*)ms12_47));
  856. }
  857. /*FI]*/
  858. }
  859. /*FI]*/
  860. }
  861. /*FI]*/
  862. /*[IF*/
  863. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  864. /*[IF*/
  865. /*AF*//*AE*/
  866. /*FI]*/
  867. }
  868. /*FI]*/
  869. R=(/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0);
  870. /*[IF*/
  871. if(R){
  872. r200merge_header_comments(C,a1);
  873. }
  874. /*FI]*/
  875. return R;
  876. }
  877. /*No:CST_ATT_DOUBLE.ensure_assertion*/
  878.  
  879.  
  880. T0* r200try_to_undefine(T200* C,T0* a1,T0* a2){
  881. T0* R=NULL;
  882. T0* _fn2=NULL;
  883. r67add_position(X77start_position(a1));
  884. _fn2=r79feature_name((T79*)((C)->_names/*8*/),X77to_key(a1));
  885. /*[IF*/
  886. if((_fn2)!=((void*)(NULL))){
  887. X77undefine_in(_fn2,a2);
  888. }
  889. /*FI]*/
  890. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC67explanation))))->_count)=(0);
  891. /*]*/
  892. /*[IRF3.3clear*/((((T68*)((T68*)(oBC67positions))))->_upper)=(-(1));
  893. /*]*/
  894. /*]*/
  895. R=r200try_to_undefine_aux(C,a1,a2);
  896. /*[IF*/
  897. if((R)!=((void*)(NULL))){
  898. /*X270set_clients*//*[IRF3.3set_clients*/((((T273*)(((T273*)R))))->_clients)=((C)->_clients/*16*/);
  899. /*]*/
  900. r200merge_header_comments(C,R);
  901. }
  902. else{
  903. r22fatal_undefine(((T22*)a2),a1);
  904. }
  905. /*FI]*/
  906. return R;
  907. }
  908. /*No:CST_ATT_DOUBLE.is_deferred*/
  909. /*No:CST_ATT_DOUBLE.set_clients*/
  910. /*No:CST_ATT_DOUBLE.value*/
  911. /*No:CST_ATT_DOUBLE.nb_errors*/
  912.  
  913.  
  914. T0* r200to_run_feature(T200* C,T0* a1,T0* a2){
  915. T0* R=NULL;
  916. T0* _rc=NULL;
  917. _rc=X46run_class(a1);
  918. R=r310at(((T310*)_rc),a2);
  919. if(NULL!=(R))switch(((T0*)R)->id) {
  920. case 326: 
  921. break;
  922. default:
  923. R=NULL;
  924. };/*[IF*/
  925. if((R)==((void*)(NULL))){
  926. {T326*n=malloc(sizeof(*n));
  927. *n=M326;
  928. r326make(n,a1,a2,(T0*)C);
  929. R=(T0*)n;
  930. }
  931. }
  932. /*FI]*/
  933. return R;
  934. }
  935.  
  936.  
  937. void r200merge_header_comments(T200* C,T0* a1){
  938. /*[IF*/
  939. if(((T59*)(oBC11small_eiffel))->_short_flag/*0*/){
  940. /*[IF*/
  941. if(((C)->_header_comment/*12*/)==((void*)(NULL))){
  942. C->_header_comment=/*X87header_comment*/((T0*)(((T187*)a1))->_header_comment/*12*/);
  943. }
  944.  else if((/*X87header_comment*/((T0*)(((T187*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  945. X87set_header_comment(a1,(C)->_header_comment/*12*/);
  946. }
  947. /*FI]*/
  948. }
  949. /*FI]*/
  950. }
  951. /*No:CST_ATT_DOUBLE.arguments*/
  952. /*No:CST_ATT_DOUBLE.require_assertion*/
  953.  
  954.  
  955. T0* r200try_to_undefine_aux(T200* C,T0* a1,T0* a2){
  956. T0* R=NULL;
  957. r67add_position(r200start_position(C));
  958. r200error(X77start_position(a1),((T0*)ms189_99414));
  959. r22fatal_undefine(((T22*)a2),a1);
  960. return R;
  961. }
  962. /*No:CST_ATT_DOUBLE.fz_dot*/
  963.  
  964.  
  965. void r200error(T0* a1,T0* a2){
  966. r67add_position(a1);
  967. r67error((T67*)(oBC11eh),a2);
  968. }
  969.  
  970.  
  971. void r200make(T200* C,T0* a1,T0* a2,T0* a3){
  972. /*[IRF3.3make_e_feature*/((((T200*)(C)))->_names)=(a1);
  973. /*]*/
  974. C->_result_type=a2;
  975. C->_value_mem=a3;
  976. }
  977.  
  978.  
  979. void r200collect_for(T2 a1){
  980. T0* _er=NULL;
  981. /*[IF*/
  982. if((a1)==(1)){
  983. _er=/*(IRF4.1require_assertion*/NULL/*)*/;
  984. /*[IF*/
  985. if((_er)!=((void*)(NULL))){
  986. /*[IF*/
  987. if(!(r315fast_has((T315*)(oBC87require_collector),_er))){
  988. r315add_last((T315*)(oBC87require_collector),_er);
  989. }
  990. /*FI]*/
  991. }
  992. /*FI]*/
  993. }
  994. else{
  995. /*[IF*/
  996. /*AF*//*AE*/
  997. /*FI]*/
  998. }
  999. /*FI]*/
  1000. }
  1001. /*No:CST_ATT_DOUBLE.set_header_comment*/
  1002. /*No:CST_ATT_DOUBLE.clients*/
  1003. /*No:CST_ATT_UNIQUE.base_class*/
  1004.  
  1005.  
  1006. T0* r187start_position(T187* C){
  1007. T0* R=NULL;
  1008. R=X77start_position(/*(IRF4.6first_name*/r79item(((T79*)((C)->_names/*8*/)),1)/*)*/);
  1009. return R;
  1010. }
  1011.  
  1012.  
  1013. T6 r187is_merge_with(T187* C,T0* a1,T0* a2){
  1014. T6 R=0;
  1015. R=1;
  1016. /*[IF*/
  1017. if(((C)->_result_type/*20*/)!=((void*)(X87result_type(a1)))){
  1018. /*[IF*/
  1019. if((((C)->_result_type/*20*/)==((void*)(NULL)))||((X87result_type(a1))==((void*)(NULL)))){
  1020. R=0;
  1021. }
  1022. /*FI]*/
  1023. }
  1024. /*FI]*/
  1025. /*[IF*/
  1026. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X87arguments(a1)))){
  1027. /*[IF*/
  1028. {/*AT*/R=0;
  1029. }
  1030. /*FI]*/
  1031. }
  1032. /*FI]*/
  1033. /*[IF*/
  1034. if(R){
  1035. /*[IF*/
  1036. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  1037. R=X46is_a_in((C)->_result_type/*20*/,X87result_type(a1),a2);
  1038. }
  1039. /*FI]*/
  1040. /*[IF*/
  1041. if((R)&&((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(NULL)))){
  1042. R=r175is_a_in((T175*)(/*(IRF4.1arguments*/NULL/*)*/),X87arguments(a1),a2);
  1043. }
  1044. /*FI]*/
  1045. /*[IF*/
  1046. if(!(R)){
  1047. R=1;
  1048. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC67explanation))))->_count)=(0);
  1049. /*]*/
  1050. /*[IRF3.3clear*/((((T68*)((T68*)(oBC67positions))))->_upper)=(-(1));
  1051. /*]*/
  1052. /*]*/
  1053. /*[IF*/
  1054. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  1055. R=X46is_a_in(X87result_type(a1),(C)->_result_type/*20*/,a2);
  1056. }
  1057. /*FI]*/
  1058. /*[IF*/
  1059. if((R)&&((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(NULL)))){
  1060. R=r175is_a_in((T175*)(X87arguments(a1)),/*(IRF4.1arguments*/NULL/*)*/,a2);
  1061. }
  1062. /*FI]*/
  1063. }
  1064. /*FI]*/
  1065. }
  1066. /*FI]*/
  1067. /*[IF*/
  1068. if(R){
  1069. r187merge_header_comments(C,a1);
  1070. }
  1071. /*FI]*/
  1072. return R;
  1073. }
  1074. /*No:CST_ATT_UNIQUE.first_name*/
  1075. /*No:CST_ATT_UNIQUE.em1*/
  1076. /*No:CST_ATT_UNIQUE.header_comment*/
  1077. /*No:CST_ATT_UNIQUE.names*/
  1078. /*No:CST_ATT_UNIQUE.result_type*/
  1079. /*No:CST_ATT_UNIQUE.code_require*/
  1080. /*No:CST_ATT_UNIQUE.make_e_feature*/
  1081.  
  1082.  
  1083. void r187add_into(T187* C,T0* a1){
  1084. T0* _fn=NULL;
  1085. T2 _i=0;
  1086. C->_base_class=r69base_class((T69*)(X77start_position(r79item((T79*)((C)->_names/*8*/),1))));
  1087. _i=1;
  1088. while (!((_i)>(r79count((T79*)((C)->_names/*8*/))))) {
  1089. _fn=r79item((T79*)((C)->_names/*8*/),_i);
  1090. /*[IF*/
  1091. if(r86has(((T86*)a1),X77to_key(_fn))){
  1092. _fn=/*X87first_name*/((T0*)/*(IRF4.6first_name*/r79item(((T79*)(((T187*)(r86at(((T86*)a1),X77to_key(_fn))))->_names/*8*/)),1)/*)*/);
  1093. r67add_position(X77start_position(_fn));
  1094. r67add_position(X77start_position(r79item((T79*)((C)->_names/*8*/),_i)));
  1095. r67error((T67*)(oBC11eh),((T0*)ms87_41905));
  1096. /*[IRF3.6append*/{T0* b1=X77to_string(_fn);
  1097. r7append((T7*)(oBC67explanation),b1);
  1098. }/*]*/
  1099. r67error((T67*)(oBC11eh),((T0*)ms12_47));
  1100. }
  1101. else{
  1102. r86put(((T86*)a1),(T0*)C,X77to_key(_fn));
  1103. }
  1104. /*FI]*/
  1105. _i=(_i)+(1);
  1106. }
  1107. }
  1108.  
  1109.  
  1110. T6 r187can_hide(T187* C,T0* a1,T0* a2){
  1111. T6 R=0;
  1112. /*[IF*/
  1113. if(((C)->_result_type/*20*/)!=((void*)(X87result_type(a1)))){
  1114. /*[IF*/
  1115. if((((C)->_result_type/*20*/)==((void*)(NULL)))||((X87result_type(a1))==((void*)(NULL)))){
  1116. r67add_position(X87start_position(a1));
  1117. r187error(r187start_position(C),((T0*)ms87_64647));
  1118. }
  1119. /*FI]*/
  1120. }
  1121. /*FI]*/
  1122. /*[IF*/
  1123. if((/*(IRF4.1arguments*/NULL/*)*/)!=((void*)(X87arguments(a1)))){
  1124. /*[IF*/
  1125. {/*AT*/r67add_position(X87start_position(a1));
  1126. r187error(r187start_position(C),((T0*)ms87_83182));
  1127. }
  1128. /*FI]*/
  1129. }
  1130. /*FI]*/
  1131. /*[IF*/
  1132. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  1133. /*[IF*/
  1134. if(((C)->_result_type/*20*/)!=((void*)(NULL))){
  1135. /*[IF*/
  1136. if(!(X46is_a_in((C)->_result_type/*20*/,X87result_type(a1),a2))){
  1137. /*[IRF3.6append*/{T0* b1=((T0*)ms87_54285);
  1138. r7append((T7*)(oBC67explanation),b1);
  1139. }/*]*/
  1140. /*[IRF3.6append*/{T0* b1=X46run_time_mark((((T310*)a2))->_current_type/*0*/);
  1141. r7append((T7*)(oBC67explanation),b1);
  1142. }/*]*/
  1143. r67error((T67*)(oBC11eh),((T0*)ms12_47));
  1144. }
  1145. /*FI]*/
  1146. }
  1147. /*FI]*/
  1148. }
  1149. /*FI]*/
  1150. /*[IF*/
  1151. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  1152. /*[IF*/
  1153. /*AF*//*AE*/
  1154. /*FI]*/
  1155. }
  1156. /*FI]*/
  1157. R=(/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0);
  1158. /*[IF*/
  1159. if(R){
  1160. r187merge_header_comments(C,a1);
  1161. }
  1162. /*FI]*/
  1163. return R;
  1164. }
  1165. /*No:CST_ATT_UNIQUE.ensure_assertion*/
  1166.  
  1167.  
  1168. T0* r187try_to_undefine(T187* C,T0* a1,T0* a2){
  1169. T0* R=NULL;
  1170. T0* _fn2=NULL;
  1171. r67add_position(X77start_position(a1));
  1172. _fn2=r79feature_name((T79*)((C)->_names/*8*/),X77to_key(a1));
  1173. /*[IF*/
  1174. if((_fn2)!=((void*)(NULL))){
  1175. X77undefine_in(_fn2,a2);
  1176. }
  1177. /*FI]*/
  1178. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC67explanation))))->_count)=(0);
  1179. /*]*/
  1180. /*[IRF3.3clear*/((((T68*)((T68*)(oBC67positions))))->_upper)=(-(1));
  1181. /*]*/
  1182. /*]*/
  1183. R=r187try_to_undefine_aux(C,a1,a2);
  1184. /*[IF*/
  1185. if((R)!=((void*)(NULL))){
  1186. /*X270set_clients*//*[IRF3.3set_clients*/((((T273*)(((T273*)R))))->_clients)=((C)->_clients/*16*/);
  1187. /*]*/
  1188. r187merge_header_comments(C,R);
  1189. }
  1190. else{
  1191. r22fatal_undefine(((T22*)a2),a1);
  1192. }
  1193. /*FI]*/
  1194. return R;
  1195. }
  1196. /*No:CST_ATT_UNIQUE.is_deferred*/
  1197. /*No:CST_ATT_UNIQUE.set_clients*/
  1198. /*No:CST_ATT_UNIQUE.value*/
  1199. /*No:CST_ATT_UNIQUE.nb_errors*/
  1200.  
  1201.  
  1202. T0* r187to_run_feature(T187* C,T0* a1,T0* a2){
  1203. T0* R=NULL;
  1204. T0* _rc=NULL;
  1205. _rc=X46run_class(a1);
  1206. R=r310at(((T310*)_rc),a2);
  1207. if(NULL!=(R))switch(((T0*)R)->id) {
  1208. case 326: 
  1209. break;
  1210. default:
  1211. R=NULL;
  1212. };/*[IF*/
  1213. if((R)==((void*)(NULL))){
  1214. {T326*n=malloc(sizeof(*n));
  1215. *n=M326;
  1216. r326make(n,a1,a2,(T0*)C);
  1217. R=(T0*)n;
  1218. }
  1219. }
  1220. /*FI]*/
  1221. return R;
  1222. }
  1223.  
  1224.  
  1225. void r187merge_header_comments(T187* C,T0* a1){
  1226. /*[IF*/
  1227. if(((T59*)(oBC11small_eiffel))->_short_flag/*0*/){
  1228. /*[IF*/
  1229. if(((C)->_header_comment/*12*/)==((void*)(NULL))){
  1230. C->_header_comment=/*X87header_comment*/((T0*)(((T187*)a1))->_header_comment/*12*/);
  1231. }
  1232.  else if((/*X87header_comment*/((T0*)(((T187*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  1233. X87set_header_comment(a1,(C)->_header_comment/*12*/);
  1234. }
  1235. /*FI]*/
  1236. }
  1237. /*FI]*/
  1238. }
  1239. /*No:CST_ATT_UNIQUE.arguments*/
  1240. /*No:CST_ATT_UNIQUE.require_assertion*/
  1241.  
  1242.  
  1243. T0* r187try_to_undefine_aux(T187* C,T0* a1,T0* a2){
  1244. T0* R=NULL;
  1245. r67add_position(r187start_position(C));
  1246. r187error(X77start_position(a1),((T0*)ms189_99414));
  1247. r22fatal_undefine(((T22*)a2),a1);
  1248. return R;
  1249. }
  1250. /*No:CST_ATT_UNIQUE.fz_dot*/
  1251. T0*oBC187counter=NULL;
  1252.  
  1253.  
  1254. void r187error(T0* a1,T0* a2){
  1255. r67add_position(a1);
  1256. r67error((T67*)(oBC11eh),a2);
  1257. }
  1258.  
  1259.  
  1260. void r187make(T187* C,T0* a1,T0* a2){
  1261. T0* _ic=NULL;
  1262. T2 _i=0;
  1263. /*[IRF3.3make_e_feature*/((((T187*)(C)))->_names)=(a1);
  1264. /*]*/
  1265. C->_result_type=a2;
  1266. {T190*n=malloc(sizeof(*n));
  1267. *n=M190;
  1268. r190make(n,r79count((T79*)((C)->_names/*8*/)));
  1269. C->_values=(T0*)n;
  1270. }
  1271. _i=0;
  1272. while (!((_i)>(((T190*)((C)->_values/*24*/))->_upper/*12*/))) {
  1273. r192increment((T192*)(oBC187counter));
  1274. {T162*n=malloc(sizeof(*n));
  1275. *n=M162;
  1276. r162make(n,((T192*)(oBC187counter))->_value/*0*/,NULL);
  1277. _ic=(T0*)n;
  1278. }
  1279. /*[IRF3.5put*/(((T190*)((C)->_values/*24*/))->_storage/*4*/)[_i]=(_ic);
  1280. /*]*/
  1281. _i=(_i)+(1);
  1282. }
  1283. }
  1284.  
  1285.  
  1286. void r187collect_for(T2 a1){
  1287. T0* _er=NULL;
  1288. /*[IF*/
  1289. if((a1)==(1)){
  1290. _er=/*(IRF4.1require_assertion*/NULL/*)*/;
  1291. /*[IF*/
  1292. if((_er)!=((void*)(NULL))){
  1293. /*[IF*/
  1294. if(!(r315fast_has((T315*)(oBC87require_collector),_er))){
  1295. r315add_last((T315*)(oBC87require_collector),_er);
  1296. }
  1297. /*FI]*/
  1298. }
  1299. /*FI]*/
  1300. }
  1301. else{
  1302. /*[IF*/
  1303. /*AF*//*AE*/
  1304. /*FI]*/
  1305. }
  1306. /*FI]*/
  1307. }
  1308. /*No:CST_ATT_UNIQUE.set_header_comment*/
  1309. /*No:CST_ATT_UNIQUE.values*/
  1310. /*No:CST_ATT_UNIQUE.clients*/
  1311.  
  1312.  
  1313. void r348register(T0* a1){
  1314. T2 _id=0;
  1315. _id=X46id(a1);
  1316. /*[IF*/
  1317. if(!(r349has((T349*)(oBC348manifest_array_types),_id))){
  1318. r349put((T349*)(oBC348manifest_array_types),a1,_id);
  1319. }
  1320. /*FI]*/
  1321. }
  1322. T0*oBC348manifest_array_types=NULL;
  1323. /*No:RUN_FEATURE_6.use_current_state*/
  1324. /*No:RUN_FEATURE_6.rescue_compound*/
  1325. /*No:RUN_FEATURE_6.actuals_clients*/
  1326. /*No:RUN_FEATURE_6.arguments*/
  1327.  
  1328.  
  1329. void r340fe_vffd7(T340* C){
  1330. r67add_position(X46start_position((C)->_result_type/*40*/));
  1331. /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms340_203984);
  1332. r67fatal_error((T67*)(oBC11eh),b1);
  1333. }/*]*/
  1334. }
  1335.  
  1336.  
  1337. void r340initialize(T340* C){
  1338. C->_result_type=((T292*)((C)->_base_feature/*32*/))->_result_type/*56*/;
  1339. C->_arguments=((T292*)((C)->_base_feature/*32*/))->_arguments/*24*/;
  1340. /*[IF*/
  1341. if(X46is_anchored((C)->_result_type/*40*/)){
  1342. r340fe_vffd7(C);
  1343. }
  1344.  else if(X46is_formal_generic((C)->_result_type/*40*/)){
  1345. r67add_position(X46start_position((C)->_result_type/*40*/));
  1346. /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms340_321828);
  1347. r67fatal_error((T67*)(oBC11eh),b1);
  1348. }/*]*/
  1349. }
  1350. /*FI]*/
  1351. C->_result_type=X46to_runnable((C)->_result_type/*40*/,(C)->_current_type/*4*/);
  1352. /*[IF*/
  1353. if(((C)->_arguments/*36*/)!=((void*)(NULL))){
  1354. /*[IF*/
  1355. if(!(r175is_runnable((T175*)((C)->_arguments/*36*/),(C)->_current_type/*4*/))){
  1356. {T175*n=malloc(sizeof(*n));
  1357. *n=M175;
  1358. r175with(n,(C)->_arguments/*36*/,(C)->_current_type/*4*/);
  1359. C->_arguments=(T0*)n;
  1360. }
  1361. }
  1362. /*FI]*/
  1363. }
  1364. /*FI]*/
  1365. C->_local_vars=((T292*)((C)->_base_feature/*32*/))->_local_vars/*16*/;
  1366. /*[IF*/
  1367. if(((C)->_local_vars/*44*/)!=((void*)(NULL))){
  1368. C->_local_vars=r166to_runnable((T166*)((C)->_local_vars/*44*/),(C)->_current_type/*4*/);
  1369. }
  1370. /*FI]*/
  1371. C->_routine_body=((T292*)((C)->_base_feature/*32*/))->_routine_body/*44*/;
  1372. /*[IF*/
  1373. if(((C)->_routine_body/*48*/)!=((void*)(NULL))){
  1374. C->_routine_body=r204to_runnable((T204*)((C)->_routine_body/*48*/),(C)->_current_type/*4*/);
  1375. }
  1376. /*FI]*/
  1377. /*[IF*/
  1378. if(r73require_check((T73*)(oBC11run_control))){
  1379. C->_require_assertion=r292run_require((T0*)C);
  1380. }
  1381. /*FI]*/
  1382. /*[IF*/
  1383. if(r73ensure_check((T73*)(oBC11run_control))){
  1384. C->_ensure_assertion=r292run_ensure((T0*)C);
  1385. }
  1386. /*FI]*/
  1387. C->_rescue_compound=((T292*)((C)->_base_feature/*32*/))->_rescue_compound/*48*/;
  1388. /*[IF*/
  1389. if(((C)->_rescue_compound/*52*/)!=((void*)(NULL))){
  1390. /*[IRF3.3set_used*/((((T334*)((T334*)(oBC11exceptions_handler))))->_used)=(1);
  1391. /*]*/
  1392. C->_rescue_compound=r204to_runnable((T204*)((C)->_rescue_compound/*52*/),(C)->_current_type/*4*/);
  1393. }
  1394. /*FI]*/
  1395. r337add_function((T0*)C);
  1396. }
  1397.  
  1398.  
  1399. T0* r340start_position(T340* C){
  1400. T0* R=NULL;
  1401. R=r292start_position((T292*)((C)->_base_feature/*32*/));
  1402. return R;
  1403. }
  1404. /*No:RUN_FEATURE_6.require_assertion*/
  1405. /*No:RUN_FEATURE_6.clients_memory*/
  1406. /*No:RUN_FEATURE_6.ucs_not_computed*/
  1407. /*No:RUN_FEATURE_6.current_type*/
  1408.  
  1409.  
  1410. void r340add_client(T340* C,T0* a1){
  1411. T2 _i=0;
  1412. /*[IF*/
  1413. if(((C)->_actuals_clients/*12*/)==((void*)(NULL))){
  1414. {T321*n=malloc(sizeof(*n));
  1415. *n=M321;
  1416. r321with_capacity(n,4);
  1417. C->_actuals_clients=(T0*)n;
  1418. }
  1419. r321add_last((T321*)((C)->_actuals_clients/*12*/),a1);
  1420. }
  1421. else{
  1422. _i=r321fast_index_of((T321*)((C)->_actuals_clients/*12*/),a1);
  1423. /*[IF*/
  1424. if((_i)>(((T321*)((C)->_actuals_clients/*12*/))->_upper/*8*/)){
  1425. r321add_last((T321*)((C)->_actuals_clients/*12*/),a1);
  1426. }
  1427. /*FI]*/
  1428. }
  1429. /*FI]*/
  1430. r310add_client((T310*)(r340run_class(C)),a1);
  1431. }
  1432.  
  1433.  
  1434. T0* r340run_class(T340* C){
  1435. T0* R=NULL;
  1436. R=X46run_class((C)->_current_type/*4*/);
  1437. return R;
  1438. }
  1439. /*No:RUN_FEATURE_6.result_type*/
  1440. /*No:RUN_FEATURE_6.base_feature*/
  1441. /*No:RUN_FEATURE_6.ensure_assertion*/
  1442.  
  1443.  
  1444. void r340make(T340* C,T0* a1,T0* a2,T0* a3){
  1445. C->_current_type=a1;
  1446. C->_name=a2;
  1447. C->_base_feature=a3;
  1448. /*[IRF3.5add_rf*/r317put(((T317*)(((T310*)(r340run_class(C)))->_feature_dictionary/*24*/)),(T0*)C,X77to_key(a2));
  1449. /*]*/
  1450. r59incr_magic_count((T59*)(oBC11small_eiffel));
  1451. C->_use_current_state=15;
  1452. r59push((T59*)(oBC11small_eiffel),(T0*)C);
  1453. r340initialize(C);
  1454. r59pop((T59*)(oBC11small_eiffel));
  1455. }
  1456. /*No:RUN_FEATURE_6.routine_body*/
  1457. /*No:RUN_FEATURE_6.name*/
  1458. /*No:RUN_FEATURE_6.local_vars*/
  1459.  
  1460.  
  1461. T2 r340arg_count(T340* C){
  1462. T2 R=0;
  1463. /*[IF*/
  1464. if(((C)->_arguments/*36*/)!=((void*)(NULL))){
  1465. R=/*(IRF4.6count*/(((T179*)(((T175*)((C)->_arguments/*36*/))->_flat_list/*8*/)))->_upper/*12*//*)*/;
  1466. }
  1467. /*FI]*/
  1468. return R;
  1469. }
  1470.  
  1471.  
  1472. T0* r340clients(T340* C){
  1473. T0* R=NULL;
  1474. T0* _bfbc=NULL;
  1475. T0* _bc=NULL;
  1476. /*[IF*/
  1477. if(((C)->_clients_memory/*8*/)==((void*)(NULL))){
  1478. _bc=X46base_class((C)->_current_type/*4*/);
  1479. _bfbc=((T292*)((C)->_base_feature/*32*/))->_base_class/*4*/;
  1480. /*[IF*/
  1481. if((_bc)==((void*)(_bfbc))){
  1482. R=((T292*)((C)->_base_feature/*32*/))->_clients/*20*/;
  1483. }
  1484. else{
  1485. R=r22clients_for(((T22*)_bc),(C)->_name/*16*/);
  1486. }
  1487. /*FI]*/
  1488. C->_clients_memory=R;
  1489. }
  1490. else{
  1491. R=(C)->_clients_memory/*8*/;
  1492. }
  1493. /*FI]*/
  1494. return R;
  1495. }
  1496.  
  1497.  
  1498. T6 r340is_exported_in(T340* C,T0* a1){
  1499. T6 R=0;
  1500. R=r94gives_permission_to((T94*)(r340clients(C)),a1);
  1501. return R;
  1502. }
  1503. /*No:RUN_FEATURE_6.fatal_error*/
  1504.  
  1505.  
  1506. T0* r259generic_list(T259* C){
  1507. T0* R=NULL;
  1508. r259fatal_error_generic_list(C);
  1509. return R;
  1510. }
  1511.  
  1512.  
  1513. T0* r259base_class(T259* C){
  1514. T0* R=NULL;
  1515. T0* _bcn=NULL;
  1516. _bcn=(C)->_base_class_name/*4*/;
  1517. /*[IF*/
  1518. if((_bcn)!=((void*)(NULL))){
  1519. R=r47base_class(((T47*)_bcn));
  1520. }
  1521. else{
  1522. /*[IRF3.6append*/{T0* b1=((T0*)ms46_37098);
  1523. r7append((T7*)(oBC67explanation),b1);
  1524. }/*]*/
  1525. r67add_type((T0*)C,((T0*)ms12_47));
  1526. r67print_as_fatal_error((T67*)(oBC11eh));
  1527. }
  1528. /*FI]*/
  1529. return R;
  1530. }
  1531. /*No:TYPE_REAL.base_class_name*/
  1532. /*No:TYPE_REAL.start_position*/
  1533. /*No:TYPE_REAL.is_formal_generic*/
  1534. int fBC259used_as_reference=0;
  1535.  
  1536.  
  1537. void r259used_as_reference(void){
  1538. if (fBC259used_as_reference==0){
  1539. fBC259used_as_reference=1;
  1540. r259load_ref(((T0*)ms13_7696));
  1541. }}
  1542.  
  1543.  
  1544. T6 r259is_a_in(T259* C,T0* a1,T0* a2){
  1545. T6 R=0;
  1546. T0* _ct=NULL;
  1547. T0* _t2=NULL;
  1548. T0* _t1=NULL;
  1549. /*[IF*/
  1550. if((r259written_mark())==((void*)(X46written_mark(a1)))){
  1551. R=1;
  1552. }
  1553. else{
  1554. _ct=(((T310*)a2))->_current_type/*0*/;
  1555. _t1=r259to_runnable(C,_ct);
  1556. _t2=X46to_runnable(a1,_ct);
  1557. /*[IF*/
  1558. if((X46run_time_mark(_t1))==((void*)(X46run_time_mark(_t2)))){
  1559. R=1;
  1560. }
  1561. else{
  1562. R=X46is_a(_t1,_t2);
  1563. }
  1564. /*FI]*/
  1565. }
  1566. /*FI]*/
  1567. return R;
  1568. }
  1569. /*No:TYPE_REAL.id*/
  1570. /*No:TYPE_REAL.is_pointer*/
  1571.  
  1572.  
  1573. T0* r259look_up_for(T259* C,T0* a1,T0* a2){
  1574. T0* R=NULL;
  1575. R=r22look_up_for((T22*)(r259base_class(C)),a1,a2);
  1576. return R;
  1577. }
  1578. /*No:TYPE_REAL.us_real_ref*/
  1579.  
  1580.  
  1581. T0* r259to_runnable(T259* C,T0* a1){
  1582. T0* R=NULL;
  1583. R=(T0*)C;
  1584. r259check_type(C);
  1585. return R;
  1586. }
  1587. /*No:TYPE_REAL.us_double_ref*/
  1588. /*No:TYPE_REAL.run_type*/
  1589.  
  1590.  
  1591. T0* r259run_class(T259* C){
  1592. T0* R=NULL;
  1593. R=r59run_class((T0*)C);
  1594. return R;
  1595. }
  1596.  
  1597.  
  1598. T6 r259has_creation(T259* C,T0* a1){
  1599. T6 R=0;
  1600. r67add_position(X77start_position(a1));
  1601. r259error(/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,((T0*)ms253_100044));
  1602. return R;
  1603. }
  1604. /*No:TYPE_REAL.expanded_initializer*/
  1605. /*No:TYPE_REAL.us_item*/
  1606. /*No:TYPE_REAL.is_like_current*/
  1607. /*No:TYPE_REAL.is_boolean*/
  1608. /*No:TYPE_REAL.is_generic*/
  1609. /*No:TYPE_REAL.is_bit*/
  1610. /*No:TYPE_REAL.is_real*/
  1611.  
  1612.  
  1613. T0* r259smallest_ancestor(T259* C,T0* a1){
  1614. T0* R=NULL;
  1615. T0* _rto=NULL;
  1616. _rto=X46run_type(a1);
  1617. /*[IF*/
  1618. if(X46is_integer(_rto)){
  1619. R=(T0*)C;
  1620. }
  1621.  else if(X46is_real(_rto)){
  1622. R=(T0*)C;
  1623. }
  1624.  else if(X46is_double(_rto)){
  1625. R=a1;
  1626. }
  1627. else{
  1628. R=r261smallest_ancestor((T261*)(r259type_real_ref()),_rto);
  1629. }
  1630. /*FI]*/
  1631. return R;
  1632. }
  1633. /*No:TYPE_REAL.is_any*/
  1634. /*No:TYPE_REAL.nb_errors*/
  1635.  
  1636.  
  1637. T0* r259run_time_mark(void){
  1638. T0* R=NULL;
  1639. R=((T0*)ms13_1208);
  1640. return R;
  1641. }
  1642. /*No:TYPE_REAL.is_expanded*/
  1643. /*No:TYPE_REAL.is_basic_eiffel_expanded*/
  1644. /*No:TYPE_REAL.short_hook*/
  1645. int fBC11type_real_ref=0;
  1646. T0*oBC11type_real_ref=NULL;
  1647.  
  1648.  
  1649. T0* r259type_real_ref(void){
  1650. if(fBC11type_real_ref==0){
  1651. T0* _real_ref=NULL;
  1652. fBC11type_real_ref=1;
  1653. {T47*n=malloc(sizeof(*n));
  1654. *n=M47;
  1655. r47make(n,((T0*)ms13_7696),NULL);
  1656. _real_ref=(T0*)n;
  1657. }
  1658. {T261*n=malloc(sizeof(*n));
  1659. *n=M261;
  1660. /*[IRF3.3make*/((((T261*)(n)))->_base_class_name)=(_real_ref);
  1661. /*]*/
  1662. oBC11type_real_ref=(T0*)n;
  1663. }
  1664. }
  1665. return oBC11type_real_ref;}
  1666. int fBC11type_double=0;
  1667. T0*oBC11type_double=NULL;
  1668.  
  1669.  
  1670. T0* r259type_double(void){
  1671. if(fBC11type_double==0){
  1672. fBC11type_double=1;
  1673. {T255*n=malloc(sizeof(*n));
  1674. *n=M255;
  1675. r255make(n,NULL);
  1676. oBC11type_double=(T0*)n;
  1677. }
  1678. }
  1679. return oBC11type_double;}
  1680. /*No:TYPE_REAL.is_string*/
  1681. /*No:TYPE_REAL.is_integer*/
  1682. /*No:TYPE_REAL.is_like_feature*/
  1683. /*No:TYPE_REAL.fz_dot*/
  1684. /*No:TYPE_REAL.is_anchored*/
  1685. /*No:TYPE_REAL.is_run_type*/
  1686.  
  1687.  
  1688. T6 r259is_a(T259* C,T0* a1){
  1689. T6 R=0;
  1690. /*[IF*/
  1691. if((X46is_real(a1))||(X46is_double(a1))){
  1692. R=1;
  1693. }
  1694.  else if(r22is_subclass_of((T22*)(r259base_class(C)),X46base_class(a1))){
  1695. R=1;
  1696. r259used_as_reference();
  1697. }
  1698.  else if((X46run_time_mark(a1))==((void*)(((T0*)ms13_10890)))){
  1699. R=1;
  1700. ((/*UT*/(void)((T255*)(r259type_double()))),r255used_as_reference());
  1701. }
  1702. /*FI]*/
  1703. /*[IF*/
  1704. if(!(R)){
  1705. r67add_type((T0*)C,((T0*)ms12_17730));
  1706. r67add_type(a1,((T0*)ms12_47));
  1707. }
  1708. /*FI]*/
  1709. return R;
  1710. }
  1711. /*No:TYPE_REAL.is_character*/
  1712. /*No:TYPE_REAL.is_reference*/
  1713.  
  1714.  
  1715. T0* r259written_mark(void){
  1716. T0* R=NULL;
  1717. R=((T0*)ms13_1208);
  1718. return R;
  1719. }
  1720.  
  1721.  
  1722. void r259error(T0* a1,T0* a2){
  1723. r67add_position(a1);
  1724. r67error((T67*)(oBC11eh),a2);
  1725. }
  1726.  
  1727.  
  1728. void r259make(T259* C,T0* a1){
  1729. {T47*n=malloc(sizeof(*n));
  1730. *n=M47;
  1731. r47make(n,((T0*)ms13_1208),a1);
  1732. C->_base_class_name=(T0*)n;
  1733. }
  1734. }
  1735. /*No:TYPE_REAL.is_none*/
  1736. /*No:TYPE_REAL.us_real*/
  1737. /*No:TYPE_REAL.is_array*/
  1738. /*No:TYPE_REAL.fz_inako*/
  1739.  
  1740.  
  1741. void r259fatal_error_generic_list(T259* C){
  1742. r67add_type((T0*)C,((T0*)ms46_29184));
  1743. r67print_as_fatal_error((T67*)(oBC11eh));
  1744. }
  1745. /*No:TYPE_REAL.is_like_argument*/
  1746.  
  1747.  
  1748. void r259load_ref(T0* a1){
  1749. T0* _rf=NULL;
  1750. T0* _rc=NULL;
  1751. T0* _cn=NULL;
  1752. {T47*n=malloc(sizeof(*n));
  1753. *n=M47;
  1754. r47make(n,a1,NULL);
  1755. _cn=(T0*)n;
  1756. }
  1757. _rc=r22run_class((T22*)(r47base_class(((T47*)_cn))));
  1758. r310set_at_run_time(((T310*)_rc));
  1759. _rf=r310get_feature_with(((T310*)_rc),((T0*)ms13_1764));
  1760. }
  1761. int fBC259check_type=0;
  1762.  
  1763.  
  1764. void r259check_type(T259* C){
  1765. if (fBC259check_type==0){
  1766. T0* _rc=NULL;
  1767. T0* _bc=NULL;
  1768. fBC259check_type=1;
  1769. _bc=r259base_class(C);
  1770. /*[IF*/
  1771. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  1772. _rc=r259run_class(C);
  1773. }
  1774. /*FI]*/
  1775. /*[IF*/
  1776. if((/*(IRF4.9nb_errors*/((T67*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
  1777. /*[IF*/
  1778. if(!((((T22*)_bc))->_is_expanded/*20*/)){
  1779. r259error(/*(IRF4.6start_position*/(((T47*)((C)->_base_class_name/*4*/)))->_start_position/*4*//*)*/,((T0*)ms259_29722));
  1780. }
  1781. /*FI]*/
  1782. }
  1783. /*FI]*/
  1784. }}
  1785. /*No:TYPE_REAL.is_double*/
  1786.  
  1787.  
  1788. void r259short(T259* C){
  1789. r39hook((T39*)(oBC11short_print),((T0*)ms46_891));
  1790. /*[IRF3.6short_hook*/{T259* C1=C;
  1791. r39a_class_name((T39*)(oBC11short_print),(C1)->_base_class_name/*4*/);
  1792. }/*]*/
  1793. r39hook((T39*)(oBC11short_print),((T0*)ms46_888));
  1794. }
  1795.  
  1796.